package com.youlu.campus.monitor.service;

import com.youlu.campus.monitor.entity.WechatQuestion;
import com.youlu.campus.monitor.entity.WechatQuestionPageQuery;
import org.springframework.data.domain.Page;

/**
 * 微信问题业务逻辑层接口
 * 定义业务方法，返回值为业务对象/基础类型，不依赖QResult
 *
 * @author su
 * @date 2025/09/02
 */
public interface WechatQuestionService {

    /**
     * 新增微信问题
     *
     * @param question 微信问题实体
     * @return 新增后的任务实体
     */
    WechatQuestion save(WechatQuestion question);

    /**
     * 根据id删除微信问题
     *
     * @param id 任务id（MongoDB的_id）
     * @return true：删除成功；false：任务不存在
     */
    boolean deleteById(String id);


    /**
     * 根据id查询微信问题详情
     *
     * @param id 任务id
     * @return 任务实体；null：任务不存在
     */
    WechatQuestion findById(String id);

    /**
     * 分页查询微信问题列表
     *
     * @param pageQuery 分页参数（页码、每页条数、排序规则）
     * @return 分页任务列表
     */
    Page<WechatQuestion> findByPage(WechatQuestionPageQuery pageQuery);

    /**
     * 根据微信监控任务id删除微信问题
     *
     * @param id 微信监控任务id
     */
    void deleteByMonitorId(String id);
}
    